Skip to content

Conversation

@ashleyshaw
Copy link
Member

@ashleyshaw ashleyshaw commented Nov 17, 2025


name: "Pull Request"
about: "General changes, refactors, and maintenance"
title: "PR: Establish Dedicated Metrics and Reporting Directories with Cross-Referenced Documentation"
labels: ["status:needs-review"]

Summary

This PR establishes a comprehensive documentation structure for metrics collection and reporting across the LightSpeed organization, creating clear separation between collection infrastructure and published reports.

Changes

  • Created .github/reporting/ directory with comprehensive README documenting:

    • Report types, access methods, and consumption patterns
    • Integration examples for dashboards, CI/CD, and notifications
    • Retention policies and archive structure
    • Troubleshooting and best practices
  • Created .github/metrics/README.md documenting:

    • All metrics collection scripts and configuration
    • Usage guides for frontmatter, branding, and issue metrics
    • Quality gates, thresholds, and automation integration
    • Development guide for adding new metrics
  • Updated existing documentation to reference new structure:

    • docs/BRANDING.md - Clarified metrics collection vs. published reports
    • .github/agents/README.md - Added metrics/reporting to resources
    • .github/README.md - Updated directory structure diagram
    • Root README.md - Added directory links for visibility

Key Design Decisions

Separation of Concerns:

  • .github/metrics/ = Collection scripts, configuration, raw data snapshots
  • .github/reporting/ = Published reports, formatted outputs, historical archives

Clear Data Flow:

  1. Scripts in .github/metrics/ collect and validate data
  2. Configuration in metrics.config.json controls collection
  3. Reports generated to temporary metrics/out/ directory
  4. Final reports published to .github/reporting/ for version control
  5. Historical data archived in .github/reporting/*/archive/

Benefits

  • Clear separation makes it easy to find collection logic vs. outputs
  • Reporting directory suitable for external consumption (APIs, dashboards)
  • Metrics directory contains reusable collection infrastructure
  • Both directories well-documented for maintainers and consumers
  • Establishes foundation for future metrics automation

Test Plan

  • Created comprehensive README for .github/reporting/
  • Created comprehensive README for .github/metrics/
  • Updated all cross-references in existing documentation
  • Verified directory structure matches documentation
  • Validated frontmatter in new documentation files
  • Committed and pushed all changes

Related Issues

Part of metrics and reporting infrastructure setup.

Documentation

This PR creates extensive documentation for:

  • Metrics collection infrastructure
  • Report publishing and consumption
  • Integration patterns for dashboards and CI/CD
  • Development guides for extending metrics

Note: This establishes the documentation structure. Future work will include:

  • Moving existing report outputs to .github/reporting/ structure
  • Updating workflows to publish to new reporting directory
  • Creating archive automation for historical reports

Summary by CodeRabbit

  • Documentation
    • Expanded documentation structure with new Metrics and Reporting directories
    • Added comprehensive guides for metrics collection, configuration, and reporting capabilities
    • Enhanced branding metrics documentation with detailed tracking tables, agent implementation guidance, and operational workflows
    • Updated navigation references across README files to link to new resources

- Create .github/reporting/ directory with comprehensive README
- Create .github/metrics/README.md documenting collection scripts
- Update docs/BRANDING.md to reference new structure
- Update .github/agents/README.md with metrics/reporting links
- Update .github/README.md directory structure diagram
- Update root README.md with new directory links

Establishes clear separation between:
- Metrics collection (.github/metrics/) - scripts, config, raw data
- Report publishing (.github/reporting/) - formatted outputs, archives

All documentation now properly cross-references the new folder structure.
@ashleyshaw ashleyshaw requested a review from krugazul as a code owner November 17, 2025 15:52
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Nov 17, 2025

Caution

Review failed

The pull request is closed.

Note

Other AI code review bot(s) detected

CodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review.

Note

.coderabbit.yml has unrecognized properties

CodeRabbit is using all valid settings from your configuration. Unrecognized properties (listed below) have been ignored and may indicate typos or deprecated fields that can be removed.

⚠️ Parsing warnings (1)
Validation error: Unrecognized key(s) in object: 'auto_labels', 'auto_assign', 'auto_review'
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
📝 Walkthrough

Walkthrough

Adds new documentation for a metrics collection and reporting workspace and updates repository navigation to reference the new .github/metrics/ and .github/reporting/ directories; no functional code changes.

Changes

Cohort / File(s) Summary
Top-level README updates
README.md, .github/README.md
Added references and Directory Structure entries for metrics/ and reporting/ directories.
Agents README cross-references
.github/agents/README.md
Inserted two Related Resources entries linking to ../metrics/ and ../reporting/ (appears in two tables).
New metrics docs
.github/metrics/README.md, .github/metrics/*
Added LightSpeed Metrics directory README describing purpose, structure, metric types, config schema, automation triggers, outputs, and usage examples.
New reporting docs
.github/reporting/README.md, .github/reporting/*
Added LightSpeed Reporting directory README describing report types, artifacts, access/retention, automation and integration guidance.
Branding docs expansion
docs/BRANDING.md
Reorganized and expanded branding metrics documentation; added references to metrics/reporting directories; introduced detailed metrics table and agent guidance.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

  • Pure documentation changes with no runtime logic.
  • Pay extra attention to:
    • docs/BRANDING.md (expanded content and cross-links).
    • .github/metrics/README.md and .github/reporting/README.md for clarity and consistency with repository conventions.

Possibly related PRs

Suggested labels

status:needs-review, documentation

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Description check ❓ Inconclusive The description includes a bulleted summary of changes, establishes the purpose of the PR, but leaves critical sections incomplete: no linked issues, empty changelog entries, and unfilled risk assessment and testing sections. Complete the Linked issues section (close/relate to issue #), fill in at least one Changelog entry under Added, provide a Risk Level (Low/Medium/High/Critical), and outline basic testing steps in How to Test section.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately and concisely summarizes the main change: setting up new metrics and reporting folder structures and documentation.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

📜 Recent review details

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 841f933 and de7bbfe.

📒 Files selected for processing (1)
  • .github/metrics/README.md (1 hunks)

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Contributor

⚠️ Frontmatter validation failed

Please check the workflow logs for details and ensure all frontmatter follows the schema at schemas/frontmatter/frontmatter.schema.json.

See Frontmatter Documentation for guidance.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (3)
.github/reporting/README.md (2)

99-106: JavaScript code example uses hardcoded branch reference.

Line 102 hardcodes develop branch in the raw.githubusercontent.com URL. For production use, consider using dynamic branch references or documenting that users should replace it with their target branch.

- const response = await fetch(
-   'https://raw.githubusercontent.com/lightspeedwp/.github/develop/.github/reporting/frontmatter/frontmatter-metrics.json'
- );
+ const response = await fetch(
+   'https://raw.githubusercontent.com/lightspeedwp/.github/{BRANCH}/.github/reporting/frontmatter/frontmatter-metrics.json'
+ );

161-170: CI/CD example could clarify error handling.

The YAML example at line 165-169 checks coverage but doesn't handle potential JSON parsing failures or missing files gracefully. Consider adding error handling context in the documentation.

.github/metrics/README.md (1)

104-131: Configuration example is comprehensive but could add validation note.

The metrics.config.json example is well-structured. Consider adding a brief note that this is a template and developers should validate against a JSON schema before deployment.

📜 Review details

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between ee354e9 and 841f933.

📒 Files selected for processing (6)
  • .github/README.md (1 hunks)
  • .github/agents/README.md (1 hunks)
  • .github/metrics/README.md (1 hunks)
  • .github/reporting/README.md (1 hunks)
  • README.md (1 hunks)
  • docs/BRANDING.md (1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
.github/agents/**

⚙️ CodeRabbit configuration file

.github/agents/**: Prefer concise, actionable reviews. Respect documented style precedence. Link suggested fixes.

Files:

  • .github/agents/README.md
🪛 GitHub Actions: Frontmatter Validation
.github/metrics/README.md

[error] 1-1: Frontmatter validation failed. tag "file_type" must be string.

README.md

[error] 1-1: Frontmatter error: tag "file_type" must be string ({"error":"tag","tag":"file_type"}).


[error] 1-1: Frontmatter error: tag "file_type" must be string ({"error":"tag","tag":"file_type"}).

🪛 LanguageTool
.github/reporting/README.md

[uncategorized] ~124-~124: The official name of this software platform is spelled with a capital “H”.
Context: ...rics.config.json- **Workflow Files**:.github/workflows/branding.yml, .github/workf...

(GITHUB)


[uncategorized] ~201-~201: The official name of this software platform is spelled with a capital “H”.
Context: ... Collection logic and configuration | .github/metrics/ | | **Metrics Ag...

(GITHUB)


[uncategorized] ~202-~202: The official name of this software platform is spelled with a capital “H”.
Context: ... | Future automated reporting agent | [.github/agents/metrics.agent.md](../agents/metr...

(GITHUB)


[uncategorized] ~204-~204: The official name of this software platform is spelled with a capital “H”.
Context: ... | Reporting policies and standards | [.github/automation/AUTOMATION_GOVERNANCE.md](.....

(GITHUB)

.github/metrics/README.md

[uncategorized] ~44-~44: The official name of this software platform is spelled with a capital “H”.
Context: ...ignored. Generated reports are moved to .github/reporting/ for version control and dis...

(GITHUB)


[uncategorized] ~174-~174: The official name of this software platform is spelled with a capital “H”.
Context: ...*: Via workflow_dispatch trigger See .github/workflows/branding.yml for automation ...

(GITHUB)


[uncategorized] ~344-~344: The official name of this software platform is spelled with a capital “H”.
Context: ...ectory** | Generated report outputs | .github/reporting/ | | **Metric...

(GITHUB)


[uncategorized] ~345-~345: The official name of this software platform is spelled with a capital “H”.
Context: ...** | Future automated metrics agent | [.github/agents/metrics.agent.md](../agents/metr...

(GITHUB)


[uncategorized] ~346-~346: The official name of this software platform is spelled with a capital “H”.
Context: ...low** | Branding metrics automation | [.github/workflows/branding.yml](../workflows/br...

(GITHUB)


[uncategorized] ~348-~348: The official name of this software platform is spelled with a capital “H”.
Context: ...** | Metrics and reporting policies | [.github/automation/AUTOMATION_GOVERNANCE.md](.....

(GITHUB)


[uncategorized] ~352-~352: The official name of this software platform is spelled with a capital “H”.
Context: ...CE.md) | ## Future Enhancements See [.github/agents/metrics.agent.md](../agents/metr...

(GITHUB)

README.md

[uncategorized] ~816-~816: The official name of this software platform is spelled with a capital “H”.
Context: ...tion collections - 📊 Metrics Directory - Metrics collection...

(GITHUB)


[uncategorized] ~817-~817: The official name of this software platform is spelled with a capital “H”.
Context: ... configuration - 📈 Reporting Directory - Generated report...

(GITHUB)

docs/BRANDING.md

[uncategorized] ~169-~169: The official name of this software platform is spelled with a capital “H”.
Context: ... Branding metrics are collected in the .github/metrics/ directo...

(GITHUB)


[uncategorized] ~169-~169: The official name of this software platform is spelled with a capital “H”.
Context: ...ub/metrics/) directory and published to .github/reporting/: -...

(GITHUB)


[uncategorized] ~176-~176: The official name of this software platform is spelled with a capital “H”.
Context: ...tation, see: - Metrics Directory README - Collection scripts...

(GITHUB)


[uncategorized] ~177-~177: The official name of this software platform is spelled with a capital “H”.
Context: ...figuration - Reporting Directory README - Published report...

(GITHUB)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: lychee
🔇 Additional comments (9)
.github/reporting/README.md (2)

1-16: Frontmatter schema mismatch may cause validation failure.

The frontmatter uses type: 'documentation' and category: 'infrastructure', but .github/metrics/README.md and root README.md have pipeline validation errors referencing a file_type field requirement. Verify your frontmatter schema is consistent—either standardize on type or file_type across all documentation files to prevent CI failures.


199-204: LGTM: Related Resources table is clear and well-linked.

Cross-references to Metrics Directory and Branding Docs are properly formatted and easy to navigate.

.github/metrics/README.md (2)

144-206: LGTM: Usage and integration sections are clear and practical.

Commands, examples, and integration patterns are well-documented and easy to follow. The workflow integration YAML example is particularly helpful.


340-348: LGTM: Related Resources table properly links to sister directories.

Cross-references to Reporting Directory, Branding Workflow, and other related files are correct and well-organized.

docs/BRANDING.md (1)

169-177: LGTM: Metrics and reporting section integrates well with branding documentation.

The new section clearly separates collection (.github/metrics/) and publishing (.github/reporting/), with proper cross-links to the new README files. Path references use correct relative navigation from docs/ to .github/.

README.md (2)

816-817: LGTM: New directory entries follow consistent format.

The two new links fit naturally into the Key Directory Documentation section. Emoji, descriptions, and relative paths are consistent with neighboring entries (e.g., lines 814-815).


816-817: ****

The review comment contains contradictory and inaccurate claims:

  1. Main README.md has no frontmatter issue: The frontmatter (lines 1-19) does not contain a type or file_type field at all, so there is no validation error to fix.

  2. Contradictory field name guidance: The comment directs use of file_type: "documentation", but the referenced .github/metrics/README.md (and all other .github/**/README.md files) use type: 'documentation'—not file_type.

  3. No validation evidence: No validation error or failure message is provided to substantiate the claim.

  4. Lines 816-817 are unrelated: These are documentation directory links that are correct and structurally sound; they are separate from any frontmatter concerns.

The codebase consistently uses the field name type across all subdirectory README files. Ignore this review comment.

Likely an incorrect or invalid review comment.

.github/README.md (1)

351-362: LGTM: Directory structure entries are well-formatted and logically placed.

The metrics/ and reporting/ directories are documented with clear sub-entries, matching the actual file structure described in their respective READMEs. Indentation and format align with surrounding entries (lines 328-350, 364-369).

.github/agents/README.md (1)

275-276: LGTM: New Related Resources entries integrate seamlessly.

The Metrics and Reporting Directory entries extend the Related Resources table consistently. Table format, descriptions, and relative paths (../metrics/ and ../reporting/) follow the same pattern as existing entries (lines 268-274). Per coding guidelines, these concise, actionable links are appropriate for this directory.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This pull request establishes a dedicated infrastructure for metrics collection and reporting within the .github directory. It introduces two new directories with comprehensive documentation to separate concerns between metrics data collection and report generation/distribution.

Key changes:

  • Created .github/metrics/ directory for metrics collection scripts, configuration, and automation logic
  • Created .github/reporting/ directory for generated reports, artifacts, and historical data
  • Added comprehensive README documentation for both directories with usage examples and integration guidance
  • Updated cross-references across existing documentation files to reflect the new structure

Reviewed Changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
.github/metrics/README.md New comprehensive documentation for metrics collection directory including configuration, usage, and integration details
.github/reporting/README.md New documentation for reporting directory covering report types, consumption patterns, and automation
.github/README.md Updated directory structure diagram to include new metrics and reporting folders
README.md Added navigation links to new metrics and reporting directories
.github/agents/README.md Added cross-references to metrics and reporting directories in related resources table
docs/BRANDING.md Updated metrics tracking section to reference new directory structure and added links to metrics/reporting READMEs

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

---
title: 'LightSpeed Reporting Directory'
version: 'v1.0'
last_updated: '2025-11-17'
Copy link

Copilot AI Nov 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inconsistent date format. The last_updated field uses 'YYYY-MM-DD' format ('2025-11-17'), but according to LightSpeed frontmatter conventions, ISO 8601 date format should be used. Also, verify if November 17, 2025 is the intended date or if this should reflect the actual last update date.

Suggested change
last_updated: '2025-11-17'
last_updated: '2025-11-17T00:00:00Z'

Copilot uses AI. Check for mistakes.
---
title: 'LightSpeed Metrics Directory'
version: 'v1.0'
last_updated: '2025-11-17'
Copy link

Copilot AI Nov 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inconsistent date format and potential future date. The last_updated field shows '2025-11-17' which appears to be a future date. Verify this is the correct date and ensure it follows the ISO 8601 format consistently used elsewhere in the repository.

Suggested change
last_updated: '2025-11-17'
last_updated: '2024-06-20'

Copilot uses AI. Check for mistakes.
Co-authored-by: Copilot <[email protected]>
Signed-off-by: Ash Shaw <[email protected]>
@github-actions
Copy link
Contributor

⚠️ Frontmatter validation failed

Please check the workflow logs for details and ensure all frontmatter follows the schema at schemas/frontmatter/frontmatter.schema.json.

See Frontmatter Documentation for guidance.

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Signed-off-by: Ash Shaw <[email protected]>
@github-actions
Copy link
Contributor

⚠️ Frontmatter validation failed

Please check the workflow logs for details and ensure all frontmatter follows the schema at schemas/frontmatter/frontmatter.schema.json.

See Frontmatter Documentation for guidance.

@ashleyshaw ashleyshaw merged commit 1db30ba into develop Nov 17, 2025
7 of 23 checks passed
@ashleyshaw ashleyshaw deleted the claude/setup-metrics-reporting-01X9Ar7F1JuywowD359MuLja branch November 17, 2025 16:03
ashleyshaw pushed a commit that referenced this pull request Nov 17, 2025
- Change 'type' to 'file_type' in all README files
- Convert 'references' from string arrays to object arrays with path and description
- Convert 'ai_references' and 'related_docs' to standard 'references' format
- Add missing 'file_type' field where needed

This fixes the frontmatter validation errors reported in PR #96.

Files updated:
- .github/README.md
- .github/agents/README.md
- .github/reporting/README.md
- README.md
- docs/BRANDING.md
@ashleyshaw ashleyshaw changed the title Set up metrics and reporting folders PR: Establish Dedicated Metrics and Reporting Directories with Cross-Referenced Documentation Nov 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants